package org.chnxi.study.design.single;

/**
 * 单利模式-饿汉式
 *
 * 问题：
 * 1、浪费内存，加载类的时候，就已经对对象进行实例化
 * 2、存在反射调用下存在多个实例的问题，需要对构造函数进行再次判断
 */
public class HungrySingle {

    private HungrySingle(){
        //防止通过反射再次调用
        if(hungrySingle != null){
            throw new RuntimeException("已存在实例对象，禁止再次生成，请通过getInstance方法获取实例");
        }
    }

    private final static HungrySingle hungrySingle = new HungrySingle();

    public static HungrySingle getInstance(){
        return hungrySingle;
    }
}
